package com.zenith.storage.po.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.zenith.common.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 文件分享实体类
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("sto_share")
@Schema(name = "文件分享实体类", description = "文件分享实体类")
public class StorageShare extends BaseEntity {
    /**
     * 短链码
     */
    @Schema(description = "短链码")
    private String shareCode;

    /**
     * 用户文件ID
     */
    @Schema(description = "用户文件ID")
    private Long userFileId;

    /**
     * 1-公开 2-加密 3-内部协作
     */
    @Schema(description = "1-公开 2-加密 3-内部协作")
    private Integer shareType;

    /**
     * 加密分享密码
     */
    @Schema(description = "加密分享密码")
    private String password;

    /**
     * 0-不限次数
     */
    @Schema(description = "访问限制")
    private Integer accessLimit;

    /**
     * 访问次数
     */
    @Schema(description = "访问次数")
    private Integer accessCount;

    /**
     * 状态：1-正常 0-删除
     */
    @Schema(description = "状态：1-正常 0-删除")
    private Integer status;
}